deep copy [Java] 객체지향 프로그래밍 - 생성자 App 클래스를 예로 들어 인스턴스 생성하는 과정은 아래와 같아요. 컴파일을 할 때 소스 파일*.java의 클래스가 생성자가 하나도 없다면 컴파일러는 자동적으로 아래와 같은 생성자를 추가해서 컴파일해요. 아무 기능도 수행하지 않기 때문에 생성과 동시에 초기화가 필요한 인스턴스는 반드시 생성자를 선언해줘야 해요. 근데 만약에 매개변수가 있는, 기본 생성자가 아닌 생성자가 선언되어 있고, 기본 ... Object Oriented ProgrammingConstructordeep copyshallow copyOOPJavaConstructor [JS] 원시 값 vs 객체 원시 값을 변수에 할당하면 변수에는 실제 값이 저장된다. 객체를 변수에 할당하면 변수에는 참조 값이 저장된다. 원시 값을 가진 변수를 다른 변수에 할당하면 변수에는 원시 값이 복사된다. 객체를 가리키는 변수를 다른 변수에 할당하면 원본의 참조 값이 복사된다. 불변성을 갖는 원시 값을 할당한 변수는 재할당 이외에 변수 값을 변경할 수 있는 방법이 없다. 🔰 Pass By Value(값에 의한 ... 원시 값frontendImmutabledeep copyTILpass-by-referencemutableshallow copy객체jspass by valueImmutable Shallow Copy vs Deep Copy feat.Spread Operator {...} source: Spread Operator는 Deep Copy를 만들어준다 하지만 데이터가 nested 되어 있을 경우에는 nested data는 shallow copy가 된다. 따라서 nested 되어있는 부분도 deep copy 하려면 {...a, b: {...b.foods}}이런식으로 또 한번의 Spread Operator를 행해 주어야 한다 source:... deep copyspread operatorES5shallow copyES5 TIL27: Shallow and Deep Copy Shallow Copy : Clone and Merge Object의 메소드를 이용하는 방법도 있습니다. : Object.assign({}, obj) 이와 같이 객체의 모든 속성 값이 Primitive Type일 경우에는 Shallow Copy만으로도 객체의 복사가 가능합니다. 하지만 속성 값이 또 다른 객체(Nested Object)인 구조일 경우에는 복사본의 Key에 참조하는 주소값이 복... clone and merge깊은 복사얕은 복사shallow copy중첩 복제nested objectcloningsctructured cloningnested cloningdeep copy중첩 객체clone and merge [프로그래머스] 수식 최대화 (Java) 문제를 풀면서 시간이 많이 들고 헷갈렸던 내용은 크게 1) 문자열 쪼개기 2) DeepCopy에 관한 내용이었다. 1) 문자열 쪼개기 같은 경우는 "100-200*300-500+20"와 같은 문자열을 연산과 숫자를 따로 각각의 List에 넣는 작업이었다. 원래는 정규식을 사용해 바로 split을 하려고 하였으나 split에 여러 조건을 넣는것을 하지 못하여 결국 replace로 변경하고 돌아... 2020 카카오 인턴십코딩테스트 Level2정규식deep copy알고리즘 문제풀이2020 카카오 인턴십 [JS] 얕은 복사 vs 깊은 복사 변수 : 값을 담고 있는 메모리 공간 자체 또는 그 메모리 공간의 주소를 가리키는 식별자 원시값 (primitive) 원시값은 변하지 않는다. 재할당이 될 뿐이며, 재할당은 새 메모리 공간을 확보하여 값을 저장한 후 변수가 참조하던 메모리 주소를 변경하는 것이다. 원시값의 복사 : 값을 그대로 복사하지만, 별개의 메모리 공간을 가리킨다. 객체 (object) 객체는 크기가 일정하지 않고, 메... JavaScriptshallow copydeep copyJavaScript
[Java] 객체지향 프로그래밍 - 생성자 App 클래스를 예로 들어 인스턴스 생성하는 과정은 아래와 같아요. 컴파일을 할 때 소스 파일*.java의 클래스가 생성자가 하나도 없다면 컴파일러는 자동적으로 아래와 같은 생성자를 추가해서 컴파일해요. 아무 기능도 수행하지 않기 때문에 생성과 동시에 초기화가 필요한 인스턴스는 반드시 생성자를 선언해줘야 해요. 근데 만약에 매개변수가 있는, 기본 생성자가 아닌 생성자가 선언되어 있고, 기본 ... Object Oriented ProgrammingConstructordeep copyshallow copyOOPJavaConstructor [JS] 원시 값 vs 객체 원시 값을 변수에 할당하면 변수에는 실제 값이 저장된다. 객체를 변수에 할당하면 변수에는 참조 값이 저장된다. 원시 값을 가진 변수를 다른 변수에 할당하면 변수에는 원시 값이 복사된다. 객체를 가리키는 변수를 다른 변수에 할당하면 원본의 참조 값이 복사된다. 불변성을 갖는 원시 값을 할당한 변수는 재할당 이외에 변수 값을 변경할 수 있는 방법이 없다. 🔰 Pass By Value(값에 의한 ... 원시 값frontendImmutabledeep copyTILpass-by-referencemutableshallow copy객체jspass by valueImmutable Shallow Copy vs Deep Copy feat.Spread Operator {...} source: Spread Operator는 Deep Copy를 만들어준다 하지만 데이터가 nested 되어 있을 경우에는 nested data는 shallow copy가 된다. 따라서 nested 되어있는 부분도 deep copy 하려면 {...a, b: {...b.foods}}이런식으로 또 한번의 Spread Operator를 행해 주어야 한다 source:... deep copyspread operatorES5shallow copyES5 TIL27: Shallow and Deep Copy Shallow Copy : Clone and Merge Object의 메소드를 이용하는 방법도 있습니다. : Object.assign({}, obj) 이와 같이 객체의 모든 속성 값이 Primitive Type일 경우에는 Shallow Copy만으로도 객체의 복사가 가능합니다. 하지만 속성 값이 또 다른 객체(Nested Object)인 구조일 경우에는 복사본의 Key에 참조하는 주소값이 복... clone and merge깊은 복사얕은 복사shallow copy중첩 복제nested objectcloningsctructured cloningnested cloningdeep copy중첩 객체clone and merge [프로그래머스] 수식 최대화 (Java) 문제를 풀면서 시간이 많이 들고 헷갈렸던 내용은 크게 1) 문자열 쪼개기 2) DeepCopy에 관한 내용이었다. 1) 문자열 쪼개기 같은 경우는 "100-200*300-500+20"와 같은 문자열을 연산과 숫자를 따로 각각의 List에 넣는 작업이었다. 원래는 정규식을 사용해 바로 split을 하려고 하였으나 split에 여러 조건을 넣는것을 하지 못하여 결국 replace로 변경하고 돌아... 2020 카카오 인턴십코딩테스트 Level2정규식deep copy알고리즘 문제풀이2020 카카오 인턴십 [JS] 얕은 복사 vs 깊은 복사 변수 : 값을 담고 있는 메모리 공간 자체 또는 그 메모리 공간의 주소를 가리키는 식별자 원시값 (primitive) 원시값은 변하지 않는다. 재할당이 될 뿐이며, 재할당은 새 메모리 공간을 확보하여 값을 저장한 후 변수가 참조하던 메모리 주소를 변경하는 것이다. 원시값의 복사 : 값을 그대로 복사하지만, 별개의 메모리 공간을 가리킨다. 객체 (object) 객체는 크기가 일정하지 않고, 메... JavaScriptshallow copydeep copyJavaScript